<?php
session_start();
$ruta_raiz = "..";
if (!$dependencia and !$depe_codi_territorial)include "../rec_session.php";
error_reporting(7);

if ($checkValue)
{
	$num = count($checkValue);
	$i = 0;
	while ($i < $num)
	{
		$record_id = key($checkValue);
		$radicadosSel[$i] = $record_id;
		$setFiltroSelect .= $record_id ;
		if($i<=($num-2))
		{
			$setFiltroSelect .= ",";
		}
		next($checkValue);
		$i++;
	}
	if ($radicadosSel) 	$whereFiltro = " and b.radi_nume_radi in($setFiltroSelect)";
} // FIN  if ($checkValue)

if ($setFiltroSelect) $filtroSelect = $setFiltroSelect;

if ($filtroSelect)
{
	// En este proceso se utilizan las variabels $item, $textElements, $newText que son temporales para esta operacion.
	$filtroSelect = trim($filtroSelect);
	$textElements = split (",", $filtroSelect);
	$newText = "";
	foreach ($textElements as $item) {
		$item = trim ( $item );
		if ( strlen ( $item ) != 0) {
			if (strlen($item)<=6)  $sec = str_pad($item,6,"0",STR_PAD_left);
		}
	}
} // FIN if ($filtroSelect)

$carp_codi = substr($dep_radicado,0,2);

error_reporting(7);

include_once "$ruta_raiz/include/db/ConnectionHandler.php";
$db = new ConnectionHandler("$ruta_raiz");
define('ADODB_FETCH_ASSOC',2);
$ADODB_FETCH_MODE = ADODB_FETCH_ASSOC;

include "$ruta_raiz/include/query/envios/queryListaImpresos.php";

/* @var $rsMarcar ADORecordSet */
$rsMarcar = $db->query($isql);

$no_registros = 0;
$radiNumero = $rsMarcar->fields["RADI_NUME_RADI"];
if ($radiNumero =='') {
	$estado = "Error";
	$mensaje = "Verifique...";
	foreach ($textElements as $item) {
		$verrad_sal = trim ( $item );
	}
	echo "<script>alert('No se puede Generar el Listado $verrad_sal . $mensaje  ')</script>";
}
else
{
	//echo $rsMarcar->AbsolutePosition();
	$hora = date("H")."_".date("i")."_".date("s");
	// var que almacena el dia de la fecha
	$ddate = date('d');
	// var que almacena el mes de la fecha
	$mdate = date('m');
	// var que almacena el anio de la fecha
	$adate = date('Y');
	// var que almacena  la fecha formateada
	$fecha = $adate."_".$mdate."_".$ddate."_".$hora;

	$file_odt = $_FILES['archivoOdt']['tmp_name'];

	$upload_dir = "../bodega/tmp/workDir/";
	$file_tmp_odt = $upload_dir . "$fecha.odt";

	if( !move_uploaded_file($file_odt, $file_tmp_odt) ) {
		die("Error al copiar Plantilla: $file_odt en $file_tmp_odt");
	}

	/**
	 * Generar la combinacion de sobres.
	 */
	require_once '../include/odtphp/library/odf_orfeo.php';
	/**
	 * Clase para la manipulacion de archivos ODT.
	 * @var Odf_Orfeo
	 */
	$odf = new Odf_Orfeo($file_tmp_odt);


	while (!$rsMarcar->EOF) {
		$no_registros = $no_registros + 1;
		$mensaje = "";
		$verrad_sal     = $rsMarcar->fields["RADI_NUME_SALIDA"];
		$verradicado    = $rsMarcar->fields["RADI_NUME_RADI"];
		$ref_pdf        = $rsMarcar->fields["ANEX_NOMB_ARCHIVO"];
		$asunto         = $rsMarcar->fields["ANEX_DESC"];
		$sgd_dir_tipo   = $rsMarcar->fields["SGD_DIR_TIPO"];
		$rem_destino    = $rsMarcar->fields["SGD_DIR_TIPO"];
		$anex_radi_nume = $rsMarcar->fields["ANEX_RADI_NUME"];
		$dep_radicado   = substr($verrad_sal,4,3);
		$ano_radicado   = substr($verrad_sal,0,4);
		$carp_codi      = substr($dep_radicado,0,2);

		if(substr($rem_destino,0,1)=="7") $anex_radi_nume = $verrad_sal;
		$nurad = $anex_radi_nume;
		$verrad = $anex_radi_nume;
		$verradicado = $anex_radi_nume;

		include "../ver_datosrad.php";

		if ($radicadopadre) $radicado = $radicadopadre;
		if ($nurad) $radicado = $nurad;

		$pCodDep = $dpto;
		$pCodMun = $muni;

		$nombre_us    = $otro . "-".substr($nombre . " " . $papel . " " . $sapel,0 ,29);

		if(!$rem_destino) $rem_destino =1;
		$sgd_dir_tipo = 1;

		include "../jh_class/funciones_sgd.php";
		/*
		 *Se incluyen ya que en ver_datosrad no esta contemplada esta opcion
		 *que corresponde a copias
		 */
		$a = new LOCALIZACION($codep_us7,$muni_us7,$db);
		$dpto_nombre_us7 = $a->departamento;
		$muni_nombre_us7 = $a->municipio;
		/*
		 * Fin modificacion
		 */
		$a = new LOCALIZACION($pCodDep,$pCodMun,$db);
		$dpto_nombre_us = $a->departamento;
		$muni_nombre_us = $a->municipio;
		$direccion_us = $dir;
		$destino      = $muni_nombre_us;
		$departamento = $dpto_nombre_us;
		$dir_codigo   = $documento;

		/*
		 * Modificado 27072005
		 * Se modifica para que asuma el destinatario
		 */
		if($rem_destino==1)
		{
			$email_us = $email_us1;
			$telefono_us = $telefono_us1;
			$nombre_us = trim($nombre_us1);
			if($otro_us1) $nombre_us = $otro_us1 . " - " . $nombre_us;
			if($tipo_emp_us1==0)  $nombre_us .= " " . trim($prim_apel_us1) . " " . trim($seg_apel_us1);
			$destino = $muni_nombre_us1;
			$departamento = $dpto_nombre_us1;
			$direccion_us = $direccion_us1;
			$dir_codigo = $dir_codigo_us1;
			$dir_tipo = 1;
		}
		if($rem_destino==2)
		{
			$email_us = $email_us2;
			$telefono_us = $telefono_us2;
			$nombre_us = trim($nombre_us2);
			if($otro_us2) $nombre_us = $otro_us2 . " - " . $nombre_us;
			if($tipo_emp_us2==0)  $nombre_us .= " " . trim($prim_apel_us2) . " ". trim($seg_apel_us2);
			$destino = $muni_nombre_us2;
			$departamento = $dpto_nombre_us2;
			$direccion_us = $direccion_us2;
			$dir_codigo = $dir_codigo_us2;
			$dir_tipo = 2;
		}
		if($rem_destino==3)
		{
			$email_us = $email_us3;
			$telefono_us = $telefono_us3;
			$destino = $muni_nombre_us3;
			$departamento = $dpto_nombre_us3;
			$nombre_us = trim($nombre_us3);
			if($tipo_emp_us3==0)  $nombre_us .= " " . trim($prim_apel_us3) . " ".trim($seg_apel_us3);
			$dir_codigo = $dir_codigo_us3;
			$direccion_us = $direccion_us3;
			$dir_tipo = 3;
		}
		if(substr($rem_destino,0,1)==7)
		{
			$email_us = $email_us7;
			$telefono_us = $telefono_us7;
			$destino = $muni_nombre_us7;
			$departamento = $dpto_nombre_us7;
			$nombre_us = trim($nombre_us7);
			if($otro_us7) $nombre_us = $otro_us7 . " - " . $nombre_us;
			if($tipo_emp_us7==0)  $nombre_us .= " " . trim($prim_apel_us7) . " ".trim($seg_apel_us7);
			$dir_codigo = $dir_codigo_us7;
			$direccion_us = $direccion_us7;
			$dir_tipo = $rem_destino;
		}
		$nombre_us = substr(trim($nombre_us),0 ,29);
		/*
		 * Fin modificacion
		 */
		if (!$mensaje) {
			$mensaje = ""; $error = "no";
			if(!$nombre_us)    {$mensaje = "Nombre,";  $error = "si"; }
			if(!$direccion_us) {$mensaje .= "Direccion,"; $error = "si"; }
			if(!$destino)      {$mensaje .= "Municipio,";  $error = "si"; }
			if(!$departamento) {$mensaje .= "Departamento,";  $error = "si"; }
		}

		if ( $error=="no") {
		} else {
			$estado = "Error " ;
			$mensaje= "Faltan Datos $mensaje";
			echo "<script>alert('Se debe revisar el siguiente Radicado $verrad_sal . $mensaje  ')</script>";
		}

		/**
		 * Variables a reemplazar dentro del documento.
		 * (Sin asteriscos) los delimitadores se definen en la clase.
		 */
		$headers = array();
		$headers[] = "Radicado";
		$headers[] = "Radicado Padre";
		$headers[] = "Titulo";
		$headers[] = "Destinatario";
		$headers[] = "Direccion";
		$headers[] = "Telefono";
		$headers[] = "Municipio";
		$headers[] = "Departamento";
		$headers[] = "Observacion";
		$num_headers = count($headers);

		/**
		 * Valores correspondientes a cada variable.
		 */
		$data = array();
		$data[] = $verrad_sal;
		$data[] = $verrad;
		$data[] = 'Titulo';
		$data[] = $nombre_us;
		$data[] = $direccion_us;
		$data[] = $telefono_us;
		$data[] = $destino;
		$data[] = $departamento;
		$data[] = 'Ninguna';

		try {
			/**
			 * Reemplazar las variables con sus respectivos
			 * valores.
			 */
			for ($j = 0; $j < $num_headers; $j++) {
				$odf->setVars( $headers[$j], $data[$j] );
			}

			$rsMarcar->MoveNext();

			/**
			 * Si no es el ultimo regsitro.
			 */
			if ( !$rsMarcar->EOF ) {
				/**
				 * Crea una copia de la plantilla en una
				 * nueva hoja del documento.
				 */
				$odf->duplicateBody();
			}

		} catch (Exception $e) {
			echo $e->getMessage();
		}

	} // FIN del WHILE (!$rsMarcar->EOF)
	/**
	* Exportar archivo para la descarga.
	*/
	$odf->exportAsAttachedFile("$krd-sobres-$fecha.odt");
}
?>